home *** CD-ROM | disk | FTP | other *** search
/ Macworld Expo - Develope…Central & Net Innovations / Developer Central and Net Innovators (MacWorld Expo) (January 1999).iso / Developer Central / Bowers Development / Demo AppMaker / Examples / Pascal OS8 / Everything / AboutDialog.p next >
Encoding:
Text File  |  1998-10-30  |  1.8 KB  |  120 lines  |  [TEXT/CWIE]

  1. { AboutDialog.p -- Modal dialog }
  2. { Created 10/30/98 1:06 PM by AppMaker }
  3.  
  4. Unit AboutDialog;
  5. Interface
  6.  
  7. Uses
  8.     Types,
  9.     Quickdraw,
  10.     Controls,
  11.     Dialogs,
  12.     Events,
  13.     Lists,
  14.     Menus,
  15.     TextEdit,
  16.     AMDialog;
  17.  
  18. type
  19.     CAboutDialog        = object (AMDialog)
  20.  
  21.     {data members}
  22.         mOKHandle:        ControlHandle;
  23.  
  24.     {methods - public}
  25.         Procedure ConnectToData    (inData:    AMSignaler); Override;
  26.  
  27.     {methods - internal}
  28.         Procedure FinishMake; Override;
  29.         Procedure DoItem    (inItemHit:    SInt16); Override;
  30.         Procedure DataChanged    (inDataID:    longint); Override;
  31.  
  32.     end;
  33.  
  34. {----------}
  35. Function NewAboutDialog: CAboutDialog;
  36.  
  37. {----------}
  38. Function GetAboutDialog: Boolean;
  39.  
  40. {----------}
  41. Implementation
  42.  
  43. Uses
  44.     ResourceDefs,
  45.     ControlUtils,
  46.     Miscellany;
  47.  
  48. const
  49.     kOKButton        = 1;
  50.     kCapThisApplicationWasBuilLabel        = 2;
  51.  
  52.  
  53. {----------}
  54. Function NewAboutDialog: CAboutDialog;
  55. var
  56.     dialog:        CAboutDialog;
  57. begin
  58.     dialog := nil;
  59.     New (dialog);
  60.  
  61.     if dialog <> nil then begin
  62.         dialog.Initialize;
  63.     end;
  64.     NewAboutDialog := dialog;
  65. end;
  66.  
  67. {----------}
  68. Function GetAboutDialog: Boolean;
  69. var
  70.     result:            Boolean;
  71.     dialog:            CAboutDialog;
  72. begin
  73.     result := false;
  74.     dialog := NewAboutDialog;
  75.  
  76.     result := dialog.RunModal (DLOG_AboutDialog, nil);
  77.  
  78.     dialog.Free;
  79.     Dispose (dialog);
  80.  
  81.     GetAboutDialog := result;
  82. end;
  83.  
  84. {----------}
  85. Procedure CAboutDialog.FinishMake;
  86. var
  87.     errCode:        OSErr;
  88. begin
  89.     mOKHandle := GetControlItem (kOKButton);
  90.     SetDefaultState (mOKHandle, true);
  91.     errCode := SetDialogDefaultItem (mDialog, kOKButton);
  92. end;
  93.  
  94. {----------}
  95. Procedure CAboutDialog.ConnectToData (
  96.     inData:        AMSignaler); Override;
  97. begin
  98.     inherited ConnectToData (inData);
  99.  
  100. end;
  101.  
  102. {----------}
  103. Procedure CAboutDialog.DoItem (
  104.     inItemHit:        SInt16);
  105. begin
  106.     case inItemHit of
  107.     kOKButton:
  108.             SetResult (true);
  109.  
  110.     end; {switch}
  111. end;
  112.  
  113. {----------}
  114. Procedure CAboutDialog.DataChanged (
  115.     inDataID:        longint); Override;
  116. begin
  117. end;
  118.  
  119. End.
  120.